package com.ke.rule.base;


/**
 * 校验器基类
 * 
 * @author guyu
 */
public interface IValidator<T> extends IFuncUnit {

  /**
   * 执行校验
   * @param context 方法上下文
   * @param value 目标校验实体, 可能是根实体，也有可能是子孙实体，可以从上下文中获取其parent实体
   * @param builder 校验异常的构建器
   * @return 是否执行后续校验?
   */
  public boolean validate(ServiceMethodContext context, T value, ValidationException.Builder builder);
}
